using System;
using System.Collections.Generic;
using System.Text;

using NHibernate;
using Zwms.Data.Base;
using System.Runtime.Serialization;

namespace Zwms.Data.BusinessObjects
{
    [DataContract]
	public partial class SysOptLog : BusinessBase<string>
    {
        #region Declarations

        private string _logNo = String.Empty;
        private string _optDate = String.Empty;
        private string _userCode = String.Empty;
        private string _objectClass = String.Empty;
        private string _objectID = String.Empty;
        private string _optKind = String.Empty;
        private string _optTime = String.Empty;
        private string _remark = String.Empty;



        #endregion

        #region Constructors

        public SysOptLog() { }

        #endregion

        #region Methods

        public override int GetHashCode()
        {
            System.Text.StringBuilder sb = new System.Text.StringBuilder();

            sb.Append(this.GetType().FullName);
            sb.Append(_logNo);
            sb.Append(_optDate);
            sb.Append(_userCode);
            sb.Append(_objectClass);
            sb.Append(_objectID);
            sb.Append(_optKind);
            sb.Append(_optTime);
            sb.Append(_remark);

            return sb.ToString().GetHashCode();
        }

        #endregion

        #region Properties

        //public override string Id
        //{
        //    get
        //    {
        //        System.Text.StringBuilder uniqueId = new System.Text.StringBuilder();
        //        uniqueId.Append(_logNo.ToString());
        //        uniqueId.Append("^");
        //        uniqueId.Append(_optDate.ToString());
        //        return uniqueId.ToString();
        //    }
        //}

        [DataMember]
        public virtual string LogNo
        {
            get { return _logNo.TrimEnd(); }
            set
            {
                _logNo = value;
            }
        }

        [DataMember]
        public virtual string OptDate
        {
            get { return _optDate.TrimEnd(); }
            set
            {
                _optDate = value;
            }
        }

        [DataMember]
        public virtual string UserCode
        {
            get { return _userCode.TrimEnd(); }
            set
            {
                _userCode = value;
            }
        }

        [DataMember]
        public virtual string ObjectClass
        {
            get { return _objectClass.TrimEnd(); }
            set
            {
                _objectClass = value;
            }
        }

        [DataMember]
        public virtual string OptKind
        {
            get { return _optKind.TrimEnd(); }
            set
            {
                _optKind = value;
            }
        }

        [DataMember]
        public virtual string ObjectID
        {
            get { return _objectID.TrimEnd(); }
            set
            {
                _objectID = value;
            }
        }

        [DataMember]
        public virtual string OptTime
        {
            get { return _optTime.TrimEnd(); }
            set
            {
                _optTime = value;
            }
        }

        [DataMember]
        public virtual string Remark
        {
            get { return _remark.TrimEnd(); }
            set
            {
                _remark = value;
            }
        }

        #endregion
	}
}